\section{Objetivos}

Hay diversos objetivos en este proyecto. Por un lado la participación en el proyecto con la realización de 3 tareas, y por otro lado a nivel personal la realización de un proyecto con el que aprender a utilizar diferentes tecnologías, tanto para la realización del producto como del proyecto.

Estas 3 tareas se han ido definiendo a medida que el proyecto iba progresando, dado que al ser un proyecto de investigación el objetivo va cambiando a medida que se va determinando por dónde va a ir el proyecto. Por tanto se podría decir que en un inicio los objetivos no estaban claramente definidos y se han ido encaminando durante el avance del mismo. De igual manera, al tratarse de un desarrollo ágil no toda la funcionalidad desarrollada se ha puesto en marcha, si no que se han podido descartar partes a lo largo del propio desarrollo.

La primera de las 3 tareas de desarrollo viene dada en los comienzos de WebMakeUp, donde en la primera fase del desarrollo de la metodología basada en iteraciones, se requiere una labor de análisis del contexto en el que está fundamentada la herramienta WebMakeUp, aplicación para desarrollar aumentaciones web, buscando maneras de hacerla user-friendly. Para ello se tuvo que hacer un estudio de editores de diferente tipo con tal de encontrar alguna que pudiera coincidir con lo que se quería describir en WebMakeUp, una aumentación web.

La segunda de las tareas del proyecto viene a partir de la necesidad de trabajar con las interacciones entre widgets, es decir, que un usuario al interaccionar con el sitio web genera eventos y estos producen cambios de contenido. Para ello se trabaja con diagramas de transición de estados (STD). Cada uno de estos estados representa una disposición de los widgets y las transiciones entre estados se hacen en base a eventos.

La tercera de las tareas y la más importante una vez teniendo un primer prototipo funcional de la herramienta era la de reflejar esa aumentación, es decir, a partir de un modelo de datos que nos proporciona el editor generar una extensión de Google Chrome con la aumentación descrita. Por tanto se trata de un desarrollo en base a modelos descritos en un lenguaje específico de dominio (DSL).

Al igual que como objetivos se plantean estas tareas, también hay otros objetivos transversales en la realización de este proyecto. Entre ellos destacan el aprendizaje de cómo funciona un proyecto de investigación, el trabajar con documentación colaborativa, desarrollo con control de versiones (en este caso GIT) y metodologías ágiles basada en prototipos, gestión de tareas mediante una herramienta colaborativa, gestión de la calidad en el desarrollo, aprendizaje de patrones de diseño, y en general diferentes técnicas que complementan un proyecto innovador.